package com.nbcio.pm.domain;

import com.baomidou.mybatisplus.annotation.*;
import com.nbcio.common.tenant.core.TenantEntity;
import com.nbcio.pm.domain.vo.PmTeamRoleVo;
import io.github.linpeilie.annotations.AutoMapper;
import lombok.Data;
import lombok.EqualsAndHashCode;

import java.io.Serializable;

/**
 * 团队角色对象 pm_team_role
 *
 * @author nbacheng
 */
@Data
@EqualsAndHashCode(callSuper = true)
@TableName("pm_team_role")
@AutoMapper(target = PmTeamRoleVo.class, reverseConvertGenerate = false)
public class PmTeamRole extends TenantEntity implements Serializable {

    private static final long serialVersionUID = 1L;

    /**
     * 角色ID
     */
    @TableId(value = "role_id")
    private Long roleId;

    /**
     * 角色名称
     */
    @TableField("role_name")
    private String roleName;

    /**
     * 角色编码
     */
    @TableField("role_code")
    private String roleCode;

    /**
     * 角色描述
     */
    @TableField("description")
    private String description;

    /**
     * 角色级别（1-5，数字越大级别越高）
     */
    @TableField("role_level")
    private Integer roleLevel;

    /**
     * 是否系统角色（0：否，1：是）
     */
    @TableField("is_system")
    private String isSystem;

    /**
     * 排序
     */
    @TableField("sort_order")
    private Integer sortOrder;

    /**
     * 状态（0：正常，1：停用）
     */
    @TableField("status")
    private String status;

    /**
     * 备注
     */
    @TableField("remark")
    private String remark;
}
